/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package managedBeans;

import managedBeans.util.JsfUtil;

import entidades.IdGrupoType;
import entidades.Usuario;

import ejb.UsuarioEJB;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.ejb.EJB;


/**
 *
 * @author Renato
 */
@ManagedBean(name="UsuarioController")
@RequestScoped
public class UsuarioController {
    private Usuario actual;
    private String confirmacionPassword;
    private IdGrupoType idGrupoType;
    @EJB
    UsuarioEJB usuarioEJB;
    public Usuario getActual() {
        if(actual == null){
            actual = new Usuario();
        }
        return actual;
    }

    public void setActual(Usuario actual) {
        this.actual = actual;
    }

    public String getConfirmacionPassword() {
        return confirmacionPassword;
    }

    public void setConfirmacionPassword(String confirmacionPassword) {
        this.confirmacionPassword = confirmacionPassword;
    }

    public IdGrupoType getIdGrupoType() {
        return idGrupoType;
    }

    public void setIdGrupoType(IdGrupoType idGrupoType) {
        this.idGrupoType = idGrupoType;
    }
    /** Creates a new instance of UsuarioController */

    public UsuarioController() {
    }
    private boolean validaPassword(String password){
       boolean valido = true;
       if(!this.confirmacionPassword.equals(password)){
           JsfUtil.addErrorMessage("errorRePass");
           valido = false;
       }

        return valido;
    }
    private boolean validaUsuario(Usuario usuarioTemp){
        boolean valido = true;
       if(usuarioTemp!=null){
           JsfUtil.addErrorMessage("errorUsuarioRepetido");
           valido = false;
       }

        return valido;
    }
    public String doAltaDeUsuario(){
           
           String password = actual.getPasswordCopiaTemp(); 
           System.out.println("usuario "+actual.getIdUsuario());
           System.out.println("Pass "+actual.getPassword());
           if(validaPassword(password) && validaUsuario(usuarioEJB.findUsuario(actual.getIdUsuario()))){
                 JsfUtil.addSuccessMessage("usuarioRegistrado");
                 usuarioEJB.altaUsuario(actual,idGrupoType);
                 return "usuarioRegistrado";
            }
         return "altaUsuarios.faces";
     }
    public String doEliminaUsuario(String idUsuario){
        if(!usuarioEJB.remove(idUsuario)){
            JsfUtil.addErrorMessage("errorNoSePuedeEliminar");
            return "consultaUsuarios";
        }
        return "consultaUsuarios";
    }
   

}
